package com.yuanchu.order.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;

import java.io.Serializable;

/**
 * 用户记录表
 * 
 * @author adan
 * @email 2028038953@gmail.com
 * @date 2023-12-19 20:57:21
 */
@Data
@TableName("yoshop_user")
public class YoshopUserEntity implements Serializable {
	private static final long serialVersionUID = 1L;

	/**
	 * 用户ID
	 */
	@JsonProperty("user_id")
	@TableId
	private Integer userId;
	/**
	 * 用户手机号
	 */
	private String mobile;
	/**
	 * 用户昵称
	 */
	@JsonProperty("nick_name")
	private String nickName;
	/**
	 * 头像文件ID
	 */
	@JsonProperty("avatar_id")
	private Integer avatarId;
	/**
	 * 性别
	 */
	private Integer gender;
	/**
	 * 国家
	 */
	private String country;
	/**
	 * 省份
	 */
	private String province;
	/**
	 * 城市
	 */
	private String city;
	/**
	 * 默认收货地址
	 */
	@JsonProperty("address_id")
	private Integer addressId;
	/**
	 * 用户可用余额
	 */
	private String balance;
	/**
	 * 用户可用积分
	 */
	private Integer points;
	/**
	 * 用户总支付的金额
	 */
	@JsonProperty("pay_money")
	private String payMoney;
	/**
	 * 实际消费的金额(不含退款)
	 */
	@JsonProperty("expend_money")
	private String expendMoney;
	/**
	 * 会员等级ID
	 */
	@JsonProperty("grade_id")
	private Integer gradeId;
	/**
	 * 注册来源的平台 (APP、H5、小程序等)
	 */
	private String platform;
	/**
	 * 最后登录时间
	 */
	@JsonProperty("last_login_time")
	private Integer lastLoginTime;
	/**
	 * 是否删除
	 */
	@JsonProperty("is_delete")
	private Integer isDelete;
	/**
	 * 商城ID
	 */
	@JsonProperty("store_id")
	private Integer storeId;
	/**
	 * 创建时间
	 */
	@JsonProperty("create_time")
	private String createTime;
	/**
	 * 更新时间
	 */
	@JsonProperty("update_time")
	private String updateTime;

	@TableField(exist = false)
	@JsonProperty("avatar_url")
	private String avatarUrl;
	// @TableField(exist = false)
	// private YoshopUserOauthEntity currentOauth;
	//
	//
	// @TableField(exist = false)
	// private YoshopUserGradeEntity grade;

}
